<?xml version="1.0" encoding="UTF-8"?>
<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.prime.com.tr/ui">
    <h:head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <title>Sistema de Votacion</title>
    </h:head>

    <h:body>
        <h1>Elector</h1>
        <h:form id="formulario">
            <h:panelGrid columns="3" id="panelCampos">
                <h:outputLabel value="Codigo :"/>
                <h:panelGroup>
                    <h:inputText value="#{electorControlador.codigo}"
                             id="inputEid"
                             required="true"
                             requiredMessage="El dato es requerido"
                             converterMessage="El dato debe ser un numero entero mayor a 0"
                             validatorMessage="El numero debe ser mayor a 0">
                             <f:validateLongRange minimum="1"/>
                             <f:ajax event="change"/>
                    </h:inputText>
                    <p:commandButton type="pust"
                                    image="ui-icon-search"
                                    onclick="dialogoElector.show()"
                                    style="width: 25px; height: 25px;position: relative; top: 10px"/>
                </h:panelGroup>
                <p:message for="inputEid" />
                
               <h:outputLabel value="Nombre : "/>
               <h:inputText value="#{electorControlador.nombre}"
                             id="inputEnom"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEnom" />

                <h:outputLabel value="Apellido : "/>
                <h:inputText value="#{electorControlador.apellido}"
                             id="inputEape"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEape" />

                <h:outputLabel value="C. I. :"/>
                <h:inputText value="#{electorControlador.ci}"
                             id="inputEci"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEci" />

                <h:outputLabel value="Nacionalidad :"/>
                <h:inputText value="#{electorControlador.nacionalidad}" 
                             id="inputeleNac"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputeleNac" />

                <h:outputLabel value="Identidicacion de la Huella Dactilar : "/>
                <h:inputText value="#{electorControlador.huella}"
                             id="inputEhu"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEhu" />

                <h:outputLabel value="Fotografia : "/>
                <h:inputText value="#{electorControlador.foto}"
                             id="inputEfo"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEfo" />

                <h:outputLabel value="Sexo : "/>
                <h:inputText value="#{electorControlador.sexo}"
                             id="inputEse"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEse" />

                <h:outputLabel value="Fecha de Nacimiento : "/>
                 <p:calendar id="calendarFechan"
                             value="#{electorControlador.fechan}"
                            pattern="dd/MM/yyyy"
                            inputStyle="width: 110px"
                            selectListener="#{electorControlador.fechan}">
                            <f:convertDateTime dateStyle="default"
                                               pattern="dd/MM/yyyy"/>
                </p:calendar>
                <h:outputLabel/>

                
               <h:outputLabel value="Direccion : "/>
               <h:inputText value="#{electorControlador.direccion}"
                             id="inputEdi"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEdi" />

                <h:outputLabel value="Fecha : "/>
                 <p:calendar id="calendarFecha"
                             value="#{electorControlador.fecha}"
                            pattern="dd/MM/yyyy"
                            inputStyle="width: 110px"
                            selectListener="#{electorControlador.fecha}">
                            <f:convertDateTime dateStyle="default"
                                               pattern="dd/MM/yyyy"/>
                </p:calendar>
                <h:outputLabel/>


                <h:outputLabel value="Estado Civil : "/>
                <h:inputText value="#{electorControlador.estacivil}"
                             id="inputEec"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputEec" />

                <h:outputLabel value="Local de Votacion"/>
                <h:selectOneMenu value="#{electorControlador.localidad}"
                                 id="selectLocalidad"
                                 converter="LocalidadConverter"
                                 converterMessage="Error de conversion">
                    <f:selectItems value="#{electorControlador.listaLocalidad}"
                                   var="localidad"
                                   itemLabel="#{localidad.loNombre}"
                                   id="itemsDelSelectLo"/>
                </h:selectOneMenu>
                <p:message for="selectLocalidad" />

              
                <h:outputLabel value="Profesion"/>
                <h:selectOneMenu value="#{electorControlador.profesion}"
                                 id="selectProfesion"
                                 converter="ProfesionConverter"
                                 converterMessage="Error de conversion">
                    <f:selectItems value="#{electorControlador.listaProfesion}"
                                   var="profesion"
                                   itemLabel="#{profesion.proNombre}"
                                   id="itemsDelSelectPro"/>
                </h:selectOneMenu>
                <p:message for="selectProfesion" />

                <h:outputLabel value=" Certificacion de Votacion :"/>
                <h:inputText value="#{electorControlador.voto}"
                             id="inputeleVo"
                             required="true"
                             requiredMessage="El dato es requerido">
                    <f:ajax event="change"/>
                </h:inputText>
                <p:message for="inputeleVo" />

                <h:outputLabel value="Numero de Mesa"/>
                <h:selectOneMenu value="#{electorControlador.mesas}"
                                 id="selectMesas"
                                 converter="MesasConverter"
                                 converterMessage="Error de conversion">
                    <f:selectItems value="#{electorControlador.listaMesas}"
                                   var="mesas"
                                   itemLabel="#{mesas.meNombre}"
                                   id="itemsDelSelectMe"/>
                </h:selectOneMenu>
                <p:message for="selectMesas" />
        
            </h:panelGrid>
           <h:panelGrid columns="4" id="panelBotones">
                <h:commandButton value="Guardar"
                                 action="#{electorControlador.grabar}"
                                 style="width: 100px">
                    <f:ajax render="panelCampos electorTabla"/>
                </h:commandButton>
                <h:commandButton value="Borrar"
                                 actionListener="#{electorControlador.borrar}"
                                 style="width: 100px"
                                 id="botonBorrar">
                    <f:ajax render="panelCampos electorTabla"/>
                </h:commandButton>
                <h:commandButton value="Limpiar"
                                 actionListener="#{electorControlador.limpiar}"
                                 immediate="true"
                                 style="width: 100px">
                    <f:ajax render="panelCampos"/>
                </h:commandButton>
                <h:commandButton value="Salir"
                                 onclick="index"
                                 action="../index.xhtml" immediate="true"
                                 style="width: 100px">
                </h:commandButton>
            </h:panelGrid>
            <p:dialog header="Seleccione un Elector"
                      widgetVar="dialogoElector"
                      width="1300"
                      styleClass="outputpanel"
                      height="500"
                      closable="true"
                      closeOnEscape="true"
                      modal="true">

                <h:panelGrid>
                    <h:outputText id="listadoDeElectores"
                                  value="Electores"
                                  styleClass="tituloTabla"/>
                    <p:dataTable  id="electorTabla"
                                  paginator="true"
                                  selectionMode="single"
                                  rows="10"
                                  style="width:2400px"
                                  paginatorTemplate="{PreviousPageLink} {CurrentPageReport} {NextPageLink} {RowsPerPageDropdown} "
                                  rowsPerPageTemplate="5,10,15"
                                  var="fila"
                                  value="#{electorControlador.listarTodos}"
                                  rowStyleClass="#{empty rowIx or rowIx mod 2 ne 0 ? 'even-row' : 'odd-row'}"
                                  rowIndexVar="rowIx"
                                  update="inputEid, inputEnom, inputEape, inputEci, inputeleNac, inputEhu, inputEfo, inputEse, inputEfn, inputEdi, inputEf, inputEec,  inputeleVo, selectLocalidad, selectProfesion, selectMesas, itemsDelSelectLo, itemsDelSelectPro, itemsDelSelectMe"
                                  onselectComplete="dialogoElector.hide()"
                                  selection="#{electorControlador.elector}">

                        <p:column id="electorn"
                                  sortBy="#{fila.eleNombre}"
                                  filterBy="#{fila.eleNombre}">
                            <f:facet name="header">Elector</f:facet>
                            <h:outputText id="electornActual"
                                          value="#{fila.eleNombre}" >
                            </h:outputText>
                        </p:column>

                        <p:column id="eleapellido"
                                  sortBy="#{fila.eleApellido}"
                                  filterBy="#{fila.eleApellido}"   >
                            <f:facet name="header">Apellido</f:facet>
                            <h:outputText id="EleapellidoActual"
                                          value="#{fila.eleApellido}"/>
                        </p:column>
                        <p:column id="idelector"
                                  sortBy="#{fila.idElec}"
                                  filterBy="#{fila.idElec}"   >
                            <f:facet name="header">Codigo</f:facet>
                            <h:outputText id="idelectorActual"
                                          value="#{fila.idElec}"/>
                        </p:column>
                        <p:column id="eci"
                                  sortBy="#{fila.eleCi}"
                                  filterBy="#{fila.eleCi}"   >
                            <f:facet name="header">C. I.</f:facet>
                            <h:outputText id="eciActual"
                                          value="#{fila.eleCi}"/>
                        </p:column>
                          <p:column id="elenacionalidad"
                                    sortBy="#{fila.eleNacionalidad}"
                                    filterBy="#{fila.eleNacionalidad}"   >
                            <f:facet name="header">Nacionalidad.</f:facet>
                            <h:outputText id="elenacionalActual"
                                          value="#{fila.eleNacionalidad}"/>
                        </p:column>
                          <p:column id="ehuella"
                                    sortBy="#{fila.eleHuella}"
                                    filterBy="#{fila.eleHuella}"   >
                            <f:facet name="header">Huella Dactilar</f:facet>
                            <h:outputText id="ehuellaActual"
                                          value="#{fila.eleHuella}"/>
                        </p:column>
                          <p:column id="efoto"
                                    sortBy="#{fila.eleFoto}"
                                    filterBy="#{fila.eleFoto}"   >
                            <f:facet name="header">Fotografia</f:facet>
                            <h:outputText id="efotoActual"
                                          value="#{fila.eleFoto}"/>
                        </p:column>
                          <p:column id="esexo"
                                    sortBy="#{fila.eleSexo}"
                                    filterBy="#{fila.eleSexo}"   >
                            <f:facet name="header">Sexo</f:facet>
                            <h:outputText id="esexoActual"
                                          value="#{fila.eleSexo}"/>
                        </p:column>
                          <p:column id="efn"
                                    sortBy="#{fila.fechaN}"
                                    filterBy="#{fila.fechaN}"   >
                            <f:facet name="header">Fecha de Nacimiento</f:facet>
                            <h:outputText id="efnActual"
                                          value="#{fila.fechaN}"/>
                        </p:column>
                          <p:column id="edireccion"
                                    sortBy="#{fila.direccion}"
                                    filterBy="#{fila.direccion}"   >
                            <f:facet name="header">Direccion</f:facet>
                            <h:outputText id="edireccionActual"
                                          value="#{fila.direccion}"/>
                        </p:column>
                          <p:column id="efecha"
                                    sortBy="#{fila.fecha}"
                                    filterBy="#{fila.fecha}"   >
                            <f:facet name="header">Fecha</f:facet>
                            <h:outputText id="efechaActual"
                                          value="#{fila.fecha}"/>
                        </p:column>
                          <p:column id="eesci"
                                    sortBy="#{fila.eleEstacivil}"
                                    filterBy="#{fila.eleEstacivil}"   >
                            <f:facet name="header">Estado Civil</f:facet>
                            <h:outputText id="eesciActual"
                                          value="#{fila.eleEstacivil}"/>
                        </p:column>
                          <p:column id="elocal"
                                    sortBy="#{fila.localidad.loNombre}"
                                    filterBy="#{fila.localidad.loNombre}"   >
                            <f:facet name="header">Localidad</f:facet>
                            <h:outputText id="elocalActual"
                                          value="#{fila.localidad.loNombre}"/>
                        </p:column>
                          <p:column id="eprofesion"
                                    sortBy="#{fila.profesion.proNombre}"
                                    filterBy="#{fila.profesion.proNombre}"   >
                            <f:facet name="header">Profesion</f:facet>
                            <h:outputText id="eprofesionActual"
                                          value="#{fila.profesion.proNombre}"/>
                        </p:column>
                         <p:column id="idmesa"
                                   sortBy="#{fila.mesas.meNombre}"
                                   filterBy="#{fila.mesas.meNombre}"   >
                            <f:facet name="header">Numero de Mesa</f:facet>
                            <h:outputText id="idmesaActual"
                                          value="#{fila.mesas.meNombre}"/>
                        </p:column>
                         <p:column id="elevoto"
                                   sortBy="#{fila.eleVoto}"
                                   filterBy="#{fila.eleVoto}"   >
                            <f:facet name="header">Certificacion de Votacion</f:facet>
                            <h:outputText id="elevotoActual"
                                          value="#{fila.eleVoto}"/>
                        </p:column>
                    </p:dataTable>
                </h:panelGrid>
            </p:dialog>

        </h:form>
    </h:body>
</html>
